PositionOrBuilder

interface PositionOrBuilder : MessageOrBuilder

Inheritors

Functions

Link copied to clipboard
abstract fun getAltitude(): Int

In meters above MSL (but see issue #359)
optional int32 altitude = 3;
Link copied to clipboard

Geoidal separation in meters
optional sint32 altitude_geoidal_separation = 10;
Link copied to clipboard
abstract fun getAltitudeHae(): Int

HAE altitude in meters - can be used instead of MSL altitude
optional sint32 altitude_hae = 9;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.AltSource altitude_source = 6;
Link copied to clipboard
abstract fun getAltitudeSourceValue(): Int

TODO: REPLACE
.meshtastic.Position.AltSource altitude_source = 6;
Link copied to clipboard
abstract fun getFixQuality(): Int

GPS fix quality (from NMEA GxGGA statement or similar)
uint32 fix_quality = 17;
Link copied to clipboard
abstract fun getFixType(): Int

GPS fix type 2D/3D (from NMEA GxGSA statement)
uint32 fix_type = 18;
Link copied to clipboard
abstract fun getGpsAccuracy(): Int

GPS accuracy (a hardware specific constant) in mm
multiplied with DOP to calculate positional accuracy
Default: "'bout three meters-ish" :)
uint32 gps_accuracy = 14;
Link copied to clipboard
abstract fun getGroundSpeed(): Int

Ground speed in m/s and True North TRACK in 1/100 degrees
Clarification of terms:
- "track" is the direction of motion (measured in horizontal plane)
- "heading" is where the fuselage points (measured in horizontal plane)
- "yaw" indicates a relative rotation about the vertical axis
TODO: REMOVE/INTEGRATE
optional uint32 ground_speed = 15;
Link copied to clipboard
abstract fun getGroundTrack(): Int

TODO: REPLACE
optional uint32 ground_track = 16;
Link copied to clipboard
abstract fun getHDOP(): Int

TODO: REPLACE
uint32 HDOP = 12;
Link copied to clipboard
abstract fun getLatitudeI(): Int

The new preferred location encoding, multiply by 1e-7 to get degrees
in floating point
optional sfixed32 latitude_i = 1;
Link copied to clipboard

TODO: REPLACE
.meshtastic.Position.LocSource location_source = 5;
Link copied to clipboard
abstract fun getLocationSourceValue(): Int

TODO: REPLACE
.meshtastic.Position.LocSource location_source = 5;
Link copied to clipboard
abstract fun getLongitudeI(): Int

TODO: REPLACE
optional sfixed32 longitude_i = 2;
Link copied to clipboard
abstract fun getNextUpdate(): Int

Estimated/expected time (in seconds) until next update:
- if we update at fixed intervals of X seconds, use X
- if we update at dynamic intervals (based on relative movement etc),
but "AT LEAST every Y seconds", use Y
uint32 next_update = 21;
Link copied to clipboard
abstract fun getPDOP(): Int

Horizontal, Vertical and Position Dilution of Precision, in 1/100 units
- PDOP is sufficient for most cases
- for higher precision scenarios, HDOP and VDOP can be used instead,
in which case PDOP becomes redundant (PDOP=sqrt(HDOP^2 + VDOP^2))
TODO: REMOVE/INTEGRATE
uint32 PDOP = 11;
Link copied to clipboard
abstract fun getPrecisionBits(): Int

Indicates the bits of precision set by the sending node
uint32 precision_bits = 23;
Link copied to clipboard
abstract fun getSatsInView(): Int

GPS "Satellites in View" number
uint32 sats_in_view = 19;
Link copied to clipboard
abstract fun getSensorId(): Int

Sensor ID - in case multiple positioning sensors are being used
uint32 sensor_id = 20;
Link copied to clipboard
abstract fun getSeqNumber(): Int

A sequence number, incremented with each Position message to help
detect lost updates if needed
uint32 seq_number = 22;
Link copied to clipboard
abstract fun getTime(): Int

This is usually not sent over the mesh (to save space), but it is sent
from the phone so that the local device can set its time if it is sent over
the mesh (because there are devices on the mesh without GPS or RTC).
seconds since 1970
fixed32 time = 4;
Link copied to clipboard
abstract fun getTimestamp(): Int

Positional timestamp (actual timestamp of GPS solution) in integer epoch seconds
fixed32 timestamp = 7;
Link copied to clipboard

Pos. timestamp milliseconds adjustment (rarely available or required)
int32 timestamp_millis_adjust = 8;
Link copied to clipboard
abstract fun getVDOP(): Int

TODO: REPLACE
uint32 VDOP = 13;
Link copied to clipboard
abstract fun hasAltitude(): Boolean

In meters above MSL (but see issue #359)
optional int32 altitude = 3;
Link copied to clipboard

Geoidal separation in meters
optional sint32 altitude_geoidal_separation = 10;
Link copied to clipboard
abstract fun hasAltitudeHae(): Boolean

HAE altitude in meters - can be used instead of MSL altitude
optional sint32 altitude_hae = 9;
Link copied to clipboard
abstract fun hasGroundSpeed(): Boolean

Ground speed in m/s and True North TRACK in 1/100 degrees
Clarification of terms:
- "track" is the direction of motion (measured in horizontal plane)
- "heading" is where the fuselage points (measured in horizontal plane)
- "yaw" indicates a relative rotation about the vertical axis
TODO: REMOVE/INTEGRATE
optional uint32 ground_speed = 15;
Link copied to clipboard
abstract fun hasGroundTrack(): Boolean

TODO: REPLACE
optional uint32 ground_track = 16;
Link copied to clipboard
abstract fun hasLatitudeI(): Boolean

The new preferred location encoding, multiply by 1e-7 to get degrees
in floating point
optional sfixed32 latitude_i = 1;
Link copied to clipboard
abstract fun hasLongitudeI(): Boolean

TODO: REPLACE
optional sfixed32 longitude_i = 2;